package com.sg.dto.biz.app.req;

import com.sg.common.dto.BaseDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * @desc AnalysisTaskStateCodeComReqDto
 * @使用场景
 */
@Data
public class AnalysisTaskStateCodeComReqDto
        extends BaseDto
        implements Serializable {

    /**
     * 状态更新使用场景 SCENE_OF_REPORT_TASK:汇报任务场景 SCENE_OF_WORK_TASK:工作任务场景
     */
    @NotNull(message = "状态更新使用场景不能为空")
    @ApiModelProperty("状态更新使用场景")
    private String sceneOfUpdateStatus;

    /**
     * 任务进展状态 NOT_AT_THE:未开始 ONGOING:进行中 HAS_ENDED:已结束
     */
    @NotNull(message = "任务进展状态不能为空")
    @ApiModelProperty("任务进展状态")
    private String taskStatus;

    /**
     * 是否完成 TRUE:是 FALSE:否
     */
    @NotNull(message = "是否完成不能为空")
    @ApiModelProperty("是否完成")
    private String isComplete;

    /**
     * 是否逾期 TRUE:是 FALSE:否
     */
    @NotNull(message = "是否逾期不能为空")
    @ApiModelProperty("是否逾期")
    private String isOverdue;

    /**
     * 主体生命周期 CURRENTLY_VALID:当前有效 EDITING:正在编辑 ARCHIVING:历史存档
     */
    @NotNull(message = "主体生命周期不能为空")
    @ApiModelProperty("主体生命周期")
    private String subjectLifeCycle;

    /**
     * 是否完成评价工作 TRUE:是 FALSE:否
     */
    @ApiModelProperty("是否完成评价工作")
    private String isDoneEvaluate;

    /**
     * 是否完成填报工作 TRUE:是 FALSE:否
     */
    @ApiModelProperty("是否完成填报工作")
    private String isDoneFilleout;

    /**
     * 是否开启主管人工审核 TRUE:是 FALSE:否
     */
    @ApiModelProperty("是否开启主管人工审核")
    private String isOpenAudit;

    /**
     * 工作任务签收策略
     */
    @ApiModelProperty("工作任务签收策略")
    private String workTaskArrangeSignStrategy;

    /**
     * 是否已处理 TRUE:是 FALSE:否
     */
    @ApiModelProperty("是否已处理")
    private String isHandle;

}
